﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using Vit.Mvc;
using Vit.Mvc.DataAnnotations;

namespace Vit.Mvc.Models
{
    [DisplayInShort(Format = "Protal:{0}", Properties = new string[] { "Name" })]
    public class PortalMetadata
    {
        [Required]
        [DisplayName("Vit.Portal.PortalID")]
        [List(ControlType = ControlType.HiddenText, Order = 0)]
        [Detail(ControlType = ControlType.HiddenText, Order = 0)]
        [Edit(ControlType = ControlType.HiddenText, Order = 0)]
        public System.Guid PortalID { get; set; }

        [Required]
        [DisplayName("Vit.Portal.Name")]
        [List(ControlType = ControlType.SingleLineLabel, Order = 1)]
        [Detail(ControlType = ControlType.SingleLineLabel, Order = 1)]
        [Edit(ControlType = ControlType.TextBox, Order = 1)]
        [Search(ControlType = ControlType.TextBox, Order = 1)]
        public string Name { get; set; }

        [Required]
        [DisplayName("Vit.Portal.Description")]
        public string Description { get; set; }

        [Required]
        [DisplayName("Vit.Portal.Logo")]
        public string Logo { get; set; }

        [Required]
        [DisplayName("Vit.Portal.Url")]
        public string Url { get; set; }

        [Required]
        [DisplayName("Vit.Portal.DefaultTheme")]
        public System.Guid DefaultTheme { get; set; }

        [Required]
        [DisplayName("Vit.Portal.DefaultLocale")]
        public System.Guid DefaultLocale { get; set; }

        [Required]
        [DisplayName("Vit.Portal.Status")]
        public int Status { get; set; }

        [Required]
        [DisplayName("Vit.Portal.CreatedByUserID")]
        public System.Nullable<System.Guid> CreatedByUserID { get; set; }

        [Required]
        [DisplayName("Vit.Portal.CreatedOnDate")]
        public System.Nullable<System.DateTime> CreatedOnDate { get; set; }

        [Required]
        [DisplayName("Vit.Portal.LastModifiedByUserID")]
        public System.Nullable<System.Guid> LastModifiedByUserID { get; set; }

        [Required]
        [DisplayName("Vit.Portal.LastModifiedOnDate")]
        public System.Nullable<System.DateTime> LastModifiedOnDate { get; set; }
    }
}
